﻿#include<iostream>
int ave(int a, int b) {
	std::cout << __func__ << std::endl;
	return (a + b) / 2;
}
int main() {
	std::cout << __func__ << std::endl;//main
	ave(100, 200);//ave
	std::cout << __DATE__ << std::endl;//Nov  1 2022
	std::cout << __TIME__ << std::endl;//21:25:33
	std::cout << __FILE__ << std::endl;//C:\Code\c\C++基础\18-编译器理解函数\编译器理解函数\预定义宏.cpp
	std::cout << __LINE__ << std::endl;//11
	std::cout << __cplusplus << std::endl;//199711

#ifdef _CHAR_UNSIGNED
	std::cout << "char unsigned";
#else
#endif

	std::cout << __COUNTER__ << std::endl;//0

#ifdef _DEBUG
	std::cout << "debug mode!\n";
#endif
	std::cout << __FUNCTION__ << std::endl;
	std::cout << __FUNCDNAME__ << std::endl;
	std::cout << __FUNCSIG__ << std::endl;
}